#pragma once

#include <IDK.hpp>
#include <States.hpp>

class Application
{
protected:
	States mStates;
	Engine mEngine;
protected:
	virtual States CreateStates(void) = 0;
public:
	void Init(IDK::Viewport viewport, String appPath);
	bool Update(float dt);
	void OnAction(const Action& evnt);
};